STAAD.Pro Help

OS. OpenSTAADライブラリを使用するためのインスタンス化

STAADプロジェクトのデータに別のアプリケーション内からアクセスするために最初に必要なことは、インスタンス化して他のアプリケーション内にOpenSTAADのインスタンスを作成することです。これは、Visual Basic for Applications(VBA)でオブジェクト変数を作成し、その変数にOpenSTAADオブジェクトを割り当てることで行うことができます。これには、VBAのGetObject関数を使用できます。

STAAD.Pro環境を制御するオブジェクトはStaadPro.OpenSTAADと呼ばれます。このオブジェクトは、STAAD.Proの内部のグラフィカルな機能(メニュー項目やダイアログボックスの作成など)にアクセスしたり、STAADの表示、幾何形状モデル化、結果グリッド、およびポスト処理の機能にアクセスしたりするために作成する必要があります。このオブジェクトは、次のVBA関数を使用してインスタンス化または作成できます。


Set MyObject = GetObject("filepath", "ojbectclass")

各部の説明は次のとおりです。

設定説明
MyObject 前のDim文で宣言したオブジェクト名。
filepath 取得するオブジェクトが格納されたファイルの完全なファイルパスと名前を指定するオプションの文字列。OpenSTAADの場合、これは後続のカンマも含めて省略できます。
objectclass オブジェクトのクラスを表す文字列。OpenSTAADの場合、これは常にStaadpro.OpenSTAADです。

次に、その例を示します。

Set objName = GetObject("StaadPro.OpenSTAAD")

OpenSTAADアプリケーションの最後に、OpenSTAADオブジェクトを終了して、アプリケーション内のハンドルのOpenSTAAD関数に対するロックを解除し、システムリソースを解放する必要があります。


Sub How2Begin()
	'Create a variable to hold your OpenSTAAD object(s).
                
	Dim objOpenSTAAD As Object
	'Launch OpenSTAAD Object
	Set objOpenSTAAD = GetObject(, "StaadPro.OpenSTAAD")
                
	'At the end of your application, remember to terminate the OpenSTAAD objects.
                
	Set objOpenSTAAD = Nothing
End Sub